package com.etone.smartAudit.domain.work;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * f_work_rectify
 * @author 张任豪
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value="工单整改反馈信息")
@TableName(value = "f_work_rectify")
public class WorkRectify implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value="主键ID")
    @TableId(type = IdType.AUTO, value = "intId")
    private Integer id;


    @ApiModelProperty(value="工单ID")
    @TableField("intWorkId")
    private Integer workId;


    @ApiModelProperty(value="责任人ID")
    @TableField("intChargeManId")
    private Integer chargeManId;


    @ApiModelProperty(value="责任人")
    @TableField("vcChargeMan")
    private String chargeMan;


    @ApiModelProperty(value="责任部门")
    @TableField("vcChargeDept")
    private String chargeDept;


    @ApiModelProperty(value="反馈类型(0直接汇总,1多次反馈)")
    @TableField("intFeedBackType")
    private Integer feedBackType;


    @ApiModelProperty(value="相关责任人")
    @TableField("vcChargeRelateMan")
    private String chargeRelateMan;

    @ApiModelProperty(value="相关责任人")
    @TableField("vcChargeRelateManAccount")
    private String chargeRelateManAccount;


    @ApiModelProperty(value="整改计划")
    @TableField(value = "vcRectifyPlan",updateStrategy = FieldStrategy.IGNORED)
    private String rectifyPlan;

    @ApiModelProperty(value="整改落实情况")
    @TableField(value = "vcRectifyInfo",updateStrategy = FieldStrategy.IGNORED)
    private String rectifyInfo;


    @ApiModelProperty(value="制度优化文件类型")
    @TableField("vcSystemFileType")
    private String systemFileType;

    @ApiModelProperty(value="制度优化文件下载名称")
    @TableField("vcSystemFileName")
    private String systemFileName;

    @ApiModelProperty(value="制度优化文件展示名称")
    @TableField("vcSystemFileOriginName")
    private String systemFileOriginName;


    @ApiModelProperty(value="制度优化文件路劲")
    @TableField("vcSystemFileURL")
    private String systemFileURL;

    @ApiModelProperty(value="升级改造文件类型")
    @TableField("vcRemoldFileType")
    private String remoldFileType;

    @ApiModelProperty(value="升级改造文件名称")
    @TableField("vcRemoldFileName")
    private String remoldFileName;

    @ApiModelProperty(value="升级改造文件展示名称")
    @TableField("vcRemoldFileOriginName")
    private String remoldFileOriginName;

    @ApiModelProperty(value="升级改造文件路劲")
    @TableField("vcRemoldFileURL")
    private String remoldFileURL;

    @ApiModelProperty(value="其它上传措施类型")
    @TableField("vcMeasureFileType")
    private String measureFileType;

    @ApiModelProperty(value="其它上传措施名称")
    @TableField("vcMeasureFileName")
    private String measureFileName;

    @ApiModelProperty(value="其它上传措施展示名称")
    @TableField("vcMeasureFileOriginName")
    private String measureFileOriginName;

    @ApiModelProperty(value="其它上传措施路劲")
    @TableField("vcMeasureFileURL")
    private String measureFileURL;

    @ApiModelProperty(value="支持资料文件类型")
    @TableField("vcPaperFileType")
    private String paperFileType;

    @ApiModelProperty(value="支持资料文件名称")
    @TableField("vcPaperFileName")
    private String paperFileName;

    @ApiModelProperty(value="支持资料文件展示名称")
    @TableField("vcPaperFileOriginName")
    private String paperFileOriginName;

    @ApiModelProperty(value="支持资料路劲")
    @TableField("vcPaperFileURL")
    private String paperFileURL;

    @ApiModelProperty(value="整改结果(0未整改，1完成整改，2部分整改)")
    @TableField("intRectifyResult")
    private Integer rectifyResult;


    @ApiModelProperty(value="未完成原因")
    @TableField(value = "vcFailCause",updateStrategy = FieldStrategy.IGNORED)
    private String failCause;


    @ApiModelProperty(value="预期完成整改时间")
    @TableField("dtExpectTime")
    private Date expectTime;


    @ApiModelProperty(value="是否启动问责或责任追究(0未启动，1启动)")
    @TableField("intIsStartCharge")
    private Integer isStartCharge;


    @ApiModelProperty(value="问责或责任追究结果描述")
    @TableField(value = "vcChargeResult",updateStrategy = FieldStrategy.IGNORED)
    private String chargeResult;


    @ApiModelProperty(value="反馈审核状态(0:填写反馈,1:部门经理审核,2:工单接收人审核,3:接收人部门经理审核,4:公司领导审核:5结束)")
    @TableField("intFeedBackState")
    private  Integer feedBackState;

    @ApiModelProperty(value="反馈审核人ID")
    @TableField("intFeedBackAuditId")
    private Integer feedBackAuditId;


    @ApiModelProperty(value="反馈审核人")
    @TableField("vcFeedBackAudit")
    private String feedBackAudit;

    @ApiModelProperty(value="创建人")
    @TableField("intCreateManId")
    private Integer createManId;

    @ApiModelProperty(value="创建时间")
    @TableField("dtCreateTime")
    private Date createTime;
}